home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gekkan Dennou Club 145
/
Gekkan Dennou Club - 2000.6 Vol. 145 (Japan).7z
/
Gekkan Dennou Club - 2000.6 Vol. 145 (Japan) (Track 1).bin
/
tools
/
sharp
/
sxwork3.lzh
/
福袋
/
注釈付ヘッダ
/
TEXT.H
< prev
next >
Wrap
Text File
|
1994-02-20
|
9KB
|
290 lines
/*
* text.h X68k SX_SYSTEM ver 2.01 Copyright 1994 SHARP/First Class Technology
*/
#ifndef __TEXT_H
#define __TEXT_H
#ifndef __SXDEF2_H
#include <sxdef2.h>
#endif
#ifdef FORWORD
#define __PROTO_TYPE
#endif
#ifdef __STDC__
#define __PROTO_TYPE
#endif
typedef enum JustMode JustMode; /* 行揃えモード */
typedef enum TProc TProc; /* テキストエディットプロセステーブル */
typedef struct TEHis TEHis; /* 編集履歴レコード */
typedef struct TEColumn TEColumn; /* 段落情報レコード */
/*
* テキストマン (Text Man)
*/
#define T_LENMAX 0x7fffffff /* テキストエディットが扱える
テキストの最大バイト数 */
#define T_LHEIGHT 12 /* 最小改行幅 */
enum JustMode { /* 行揃えモード */
T_RIGHT = -1, /* 右寄せ */
T_LEFT, /* 中央寄せ */
T_CENTER /* 左寄せ */
};
/* 編集モード */
#define T_SHOWCR 1 /* 改行コードの表示 */
#define T_SHOWEOF (1 << 1) /* テキスト終端の表示 */
#define T_SHOWCTRL (1 << 2) /* コントロールコードの表示形式 */
#define T_EDITCTRL (1 << 3) /* コントロールコードの編集許可 */
#define T_RDONLY (1 << 4) /* リードオンリー属性 */
#define T_UNDER (1 << 5) /* 下揃え */
enum TProc { /* テキストエディットプロセステーブル */
T_LENGTH, /* 指定した幅に収まる文字列の長さを
求める */
T_WIDTH, /* 文字列の幅を求める */
T_DRAW, /* 文字列の描画 */
T_UPDT, /* 指定した範囲の描画
(バックを塗りつぶす) */
T_UPDT2, /* 編集履歴による再描画 */
T_UPDT3, /* 指定した範囲の描画 */
T_REV, /* セレクト範囲のハイライト表示 */
T_SCROLL, /* テキストエディットのスクロール処理 */
T_SCROLLR, /* 指定した範囲のスクロール処理 */
T_FILLR, /* 指定した範囲の塗りつぶし */
T_CLIP, /* マウスによるセレクト処理 */
T_CARET, /* カーソルの描画 */
T_DREOF, /* テキスト終端の描画 */
T_STR, /* 文字列の挿入 */
T_SEL, /* セレクト範囲の変更 */
T_FILLRL /* 15 */ /* 1行単位の塗りつぶし */
};
enum TMErrorCode { /* テキストマンのエラーコード */
ER_EDITABORT = -0x2800, /* 致命的なエラーでテキストを廃棄した */
ER_LINEOVER, /* レクタングルに文字が収まらない */
ER_LENOVER, /* 最大入力数をオーバーした */
ER_PROHIBITEDIT, /* 編集禁止モード */
ER_EDITERR /* 不正な文字列を入力した */
};
struct TEdit { /* テキストエディットレコード */
Rect dest; /* ディスティネーションレクタングル */
Rect view; /* ビューレクタングル */
long offsetH; /* ディスティネーションオフセット
(横方向) */
long offsetV; /* ディスティネーションオフセット
(縦方向) */
char **text; /* テキストへのハンドル */
long lenMax; /* テキストの最大バイト数 */
long length; /* 入力済みテキストのバイト数 */
long rsv0; /* システム予約 */
long selStart; /* セレクト開始位置 */
long selEnd; /* セレクト終了位置 */
long selLine; /* 現在のセレクト行位置 */
long selOffset; /* 現在のバッファのセレクト位置 */
long refCon; /* ユーザー用ワークエリア */
short lineHeight; /* 改行幅 */
short tabSize; /* TABサイズ */
short justMode; /* 行揃えモード */
char editMode; /* 編集モード */
char drawLvl; /* ドローレベル */
long locateH; /* カーソル位置の水平座標
(ロングワード) */
long locateV; /* カーソル位置の垂直座標
(ロングワード) */
Graph *inPort; /* グラフポインタ */
long caretTime; /* 内部で使用 */
short caretState; /* 内部で使用 */
long (**procs)(); /* プロセスポインタ */
short *funcCode; /* ファンクションキーアサイン
テーブルへのポインタ */
short *ctrlCode; /* コントロールキーテーブルへの
ポインタ */
void (**cProcs)(); /* コントロールキー処理ルーチン
テーブルへのポインタ */
long nColumns; /* テキストの段落数 */
long nLines; /* テキストの行数 */
long **lineStarts; /* 内部で使用 */
};
struct TEHis { /* 編集履歴レコード */
short on; /* 編集処理フラグ */
long nLine; /* 編集行数 */
long start; /* 編集開始バイト位置 */
long line; /* 編集開始行位置 */
long locateH; /* 編集開始水平座標 */
long locateV; /* 編集開始垂直座標 */
long locateM; /* 編集開始座標修正値 */
long coLine; /* 次の段落の先頭行位置 */
BOOLEAN coDiff; /* 次の段落のスクロール処理フラグ */
};
struct TEColumn { /* 段落情報レコード */
long pos; /* 段落位置 */
long nLine; /* 段落の行数 */
long line; /* 段落の先頭行位置 */
long offset; /* 段落の先頭行のオフセット */
long size; /* 段落のバイト数 */
char *ptr; /* 段落へのポインタ */
long lPos; /* 行位置 */
long lOffset; /* 行の先頭位置オフセット */
long lSize; /* 行のバイト数 */
char *lPtr; /* 行へのポインタ */
};
#ifdef __PROTO_TYPE
int TMInit(void);
int TMSetRect(TEdit **, Rect *, Rect *);
long TMChangeText(TEdit **, const char *, long);
int TMIdle(TEdit **);
int TMCaret(TEdit **, int);
int TMDispose(TEdit **);
int TMUpDate(TEdit **, Rect *);
int TMSetText(TEdit **, const char *, long);
long TMGetText(TEdit **, char *, long);
int TMSetSelect(TEdit **, long, long, long);
int TMKey(TEdit **, int);
int TMStr(TEdit **, const char *, long);
int TMCalText(TEdit **);
int TMPinScroll(TEdit **);
int TMClick(TEdit **, LPoint, int);
int TMEvent(TEdit **, TsEvent *);
int TMCut(TEdit **);
int TMCopy(TEdit **);
int TMPaste(TEdit **);
int TMDelete(TEdit **);
int TMInsert(TEdit **, const char *, long);
int TMFromScrap(void);
int TMToScrap(void);
int TMScrapHandle(Handle *);
long TMGetScrapLen(void);
int TMTextBox2(const char *, long, Rect *, int, int);
int TMCacheON(TEdit **, long);
int TMCacheOFF(TEdit **);
int TMCacheFlush(TEdit **);
int TMShow(TEdit **);
int TMHide(TEdit **);
int TMSelShow(TEdit **);
int TMSelHide(TEdit **);
long TMSearchStrF(TEdit **, const char *, long, long, long, int (*)(TEdit **), long *);
long TMSearchStrB(TEdit **, const char *, long, long, long, int (*)(TEdit **), long *);
int TMTextInWidth2(TEdit **, const char *, long, int, int, BOOLEAN *);
int TMTextWidth2(TEdit **, const char *, long, int, int);
int TMDrawText2(TEdit **, const char *, long, int, int, BOOLEAN);
int TMUpDate2(TEdit **, TEHis *);
int TMUpDate3(TEdit **, Rect *);
int TMCalCOLine(TEdit **, TEColumn *, long);
int TMCalLine(TEdit **, TEColumn *, long, BOOLEAN);
long TMLeftSel(TEdit **);
long TMRightSel(TEdit **);
int TMPointSel(TEdit **, long, long, int);
int TMOffsetSel(TEdit **, long, int);
long TMPointToLine(TEdit **, long, long, TEColumn *);
int TMCalSelPoint(TEdit **);
int TMSetView(TEdit **, Rect *);
int TMScroll(TEdit **, long, long);
int TMPointScroll(TEdit **, long, long);
int TMStr2(TEdit **, const char *, long, TEHis *);
int TMKeyToAsk(TEdit **, TsEvent *);
long TMNextCode(TEdit **, int, BOOLEAN);
int TMSetTextH(TEdit **, char **, long);
int TMOpen(const char *, long, Rect *, int, int, TEdit ***);
int TMNew2(Rect *, Rect *, Graph *, TEdit ***);
long TMNextCodeIn(TEdit **, int);
int TMSelReverse(TEdit **, long, long);
int TMTini(void);
int TMSetSelCal(TEdit **, long, long, long);
int TMActivate2(TEdit **);
int TMDeactivate2(TEdit **);
int TMCheckSel(TEdit **, long, long, long);
void TMCalPoint2(TEdit **, long, long *);
int TMISZen(TEdit **, long);
int TMSetDestOffset(TEdit **, long, long);
void TMGetDestOffset(TEdit **, long *);
int TMGetSelect(TEdit **, long *);
int TMEventW(TEdit **, TsEvent *);
int TMUpDateExist(TEdit **, BOOLEAN);
#undef __PROTO_TYPE
#else
int TMInit();
int TMSetRect();
long TMChengText();
int TMIdle();
int TMCaret();
int TMDispose();
int TMUpDate();
int TMSetText();
long TMGetText();
int TMSetSelect();
int TMKey();
int TMStr();
int TMCalText();
int TMPinScroll();
int TMClick();
int TMEvent();
int TMCut();
int TMCopy();
int TMPaste();
int TMDelete();
int TMInsert();
int TMFromScrap();
int TMToScrap();
int TMScrapHandle();
long TMGetScrapLen();
int TMTextBox2();
int TMCacheON();
int TMCacheOFF();
int TMCacheFlush();
int TMShow();
int TMHide();
int TMSelShow();
int TMSelHide();
long TMSearchStrF();
long TMSearchStrB();
int TMTextInWidth2();
int TMTextWidth2();
int TMDrawText2();
int TMUpDate2();
int TMUpDate3();
int TMCalCOLine();
int TMCalLine();
long TMLeftSel();
long TMRightSel();
int TMPointSel();
int TMOffsetSel();
long TMPointToLine();
int TMCalSelPoint();
int TMSetView();
int TMScroll();
int TMPointScroll();
int TMStr2();
int TMKeyToAsk();
long TMNextCode();
int TMSetTextH();
int TMOpen();
int TMNew2();
long TMNextCodeIn();
int TMSelReverse();
int TMTini();
int TMSetSelCal();
int TMActivate2();
int TMDeactivate2();
int TMCheckSel();
void TMCalPoint2();
int TMISZen();
int TMSetDestOffset();
void TMGetDestOffset();
int TMGetSelect();
int TMEventW();
int TMUpDateExist();
#endif __PROTO_TYPE
#endif __TEXT_H